<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<script>
  <!--  1.使用setTimeout异步操作-->
  // setTimeout(() => {
  //   console.log(23456);
  // },1000)
  
  
  //new promise要传入一个函数作为参数。 这个函数本身要传入两个参数，即resolve，reject
  //new promise(函数（resolve，reject）)
  //resolve,reject本身它们又是函数
  //链式编码
  new Promise((resolve,reject) => {
    // 把一次setTimeout看成一次网络请求
    // 1.第一次网络请求
    setTimeout(() => {
      resolve()
    },1000)
  }).then(() => {
    //1.第一次拿到请求结果的处理代码
    console.log(23456);
    console.log(23456);
    console.log(23456);
    console.log(23456);
    console.log(23456);
    console.log(23456);

    return new Promise((resolve,reject) => {
      // 2.第二次网络请求代码
      setTimeout(() => {
        resolve()
      })
    },1000)
  }).then(() => {
    //2.第二次拿到请求结果的处理代码
    console.log('hello');
    console.log('hello');
    console.log('hello');
    console.log('hello');
    console.log('hello');
    console.log('hello');
    // 3.第三次网络请求代码
    return new Promise((resolve,reject) => {
      setTimeout(() => {
        resolve()
      },1000)
    })
  }).then(() => {
    //3.第三次拿到请求结果的处理代码
    console.log('vue');
    console.log('vue');
    console.log('vue');
    console.log('vue');
    console.log('vue');
    console.log('vue');
  })
</script>
</body>
</html>